home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-12-11 | 2.0 KB | 61 lines | [TEXT/ttxt] |
- --<<<-
- class SimpleScrollBar(ScrollBar)
- class variables
- thumbStencil:(importDIB "media/sbthumb.bmp")
- horizIncStencil:(importDIB "media/sbhinc.bmp")
- horizPressIncStencil:(importDIB "media/sbhincp.bmp")
- horizDecStencil:(importDIB "media/sbhdec.bmp")
- horizPressDecStencil:(importDIB "media/sbhdecp.bmp")
- vertIncStencil:(importDIB "media/sbvinc.bmp")
- vertPressIncStencil:(importDIB "media/sbvincp.bmp")
- vertDecStencil:(importDIB "media/sbvdec.bmp")
- vertPressDecStencil:(importDIB "media/sbvdecp.bmp")
- minSpan:(15)
- end
-
- method init self {class SimpleScrollBar} #rest args #key
- height:(0) \
- width:(0) \
- orientation: ->
- (
- local decStencil,decPStencil,incStencil,incPStencil
-
- if (orientation = unsupplied) do
- if (width > height) then
- orientation := @horizontal
- else
- orientation := @vertical
- if (orientation = @horizontal) then (
- height := SimpleScrollBar.minSpan
- decStencil := SimpleScrollBar.horizDecStencil
- decPStencil := SimpleScrollBar.horizPressDecStencil
- incStencil := SimpleScrollBar.horizIncStencil
- incPStencil := SimpleScrollBar.horizPressIncStencil
- )
- else (
- width := SimpleScrollBar.minSpan
- decStencil := SimpleScrollBar.vertDecStencil
- decPStencil := SimpleScrollBar.vertPressDecStencil
- incStencil := SimpleScrollBar.vertIncStencil
- incPStencil := SimpleScrollBar.vertPressIncStencil
- )
-
- local boundary := new Rect x2:width y2:height
- apply NextMethod self orientation:orientation boundary:boundary \
- decrementStencil:decStencil incrementStencil:incStencil \
- thumbStencil:SimpleScrollBar.thumbStencil stationary:true args
- self.pressIncrementStencil := incPStencil
- self.pressDecrementStencil := decPStencil
- self.fill := ColorScheme.grayBrushes[6]
- self.stroke := BlackBrush
- self.disableBrush := ColorScheme.disableBrush
- )
-
- method rangeSetter self {class SimpleScrollBar} newRange ->
- (
- local diff := newRange.upperBound - newRange.lowerBound
- self.enabled := (diff >= self.stepAmount and diff > 0)
- NextMethod self newRange
- )
- -->>>
-